Numerical control pulse distributing system for genrating an approximated profile on a workpiece

ABSTRACT

A pulse distributing system for generating an approximated profile on a workpiece by controlling the co-operational movements of the workpiece and a tool of a numerically controlled machine tool according to input data. Said system comprises computing means which may calculate one of each number-pair which represents a point used for pulse distribution and consists of pulse representation workpiece rotary angle and pulse representation distance between the axes of the workpiece and the tool when the other thereof is given. Another embodiment of the invention further comprises error checking means operable to maintain the error of approximation within allowable tolerance.

United States Patent Inventors Rokuro Kimura;

Mikishi Kurimoto; Tsuyoshi Koide, all of Aichi-ken, Japan Appl. No. 841,401 Filed July 14,1969 Patented Nov. 9, 1971 Assignees Kabushlki Kaisha Toyota Chuo Kenkyusho by said Kimura; Toyoda Koki Kabushiki Kaisha by said Kurimoto and said Koide NUMERICAL CONTROL PULSE DISTRIBUTING SYSTEM FOR GENRATING AN APPROXIMATED Primary Examiner-Joseph F. Ruggiero Attorney-Blum, Moscovitz, Friedman & Kaplan ABSTRACT: A pulse distributing system for generating an approximated profile on a workpiece by controlling the cooperational movements of the workpiece and a tool of a numerically controlled machine tool according to input data. Said system comprises computing means which may calculate one of each number-pair which represents a point used for pulse distribution and consists of pulse representation workpiece rotary angle and pulse representation distance between the axes of the workpiece and the tool when the other thereof is given. Another embodiment of the invention further comprises error checking means operable to maintain the error of approximation within allowable tolerance.

PROFILE ON A WORKI'IIICE 28 Claims, 13 Drawing Figs.

US. Cl ..235/151.l1,

318/578, 318/570 Int. Cl ..G05b 19/18 FieldolSeareh ..235l151.1l, 151,151.1,151.11l,151PL;318/567,568,569, 570,573, 575, 578

l8 m m I RATQR PuLse REGISTER PAIENTEnuuv 9 I97! 3 6 19,58 1

sum 1 or 6 lLt PRIOR ART PRIOR ART FIG. 2 FIG. 3

PAIENTEmuv 9 |97l 3, 6 1 9 5 1 sum 2 0F 6 FIG. 4

5 PULSE 2 PULSE a 1 a (/a f FIG.5

PAIENTEBunv 9 Ian 3. 6 1 9. 58 1 sum 3 0F 6 I PULSE 2 2| REGISTER' FIG. 6

NUMERICAL coNT toL PULSE DISTRIBUTING SYSTEM FOR GENRATING AN APPROXIMATED PROFILE M A WORKPIECE BACKGROUND OF THE INVENTION The invention relates to distributing systems of electric pulses used in numerical control of machine tools, and more particularly to the pulse distributing system which permits the generation of an approximated profile on a workpiece with increased accuracy through numerically controlling the cooperational movements of the workpiece and a grinding wheel or a tool of the machine tool.

It is a common practice in producing a complicated profile, such as a cam profile, on a workpiece by controlling the rotary movement of the workpiece in conjunction with the grinding wheel movement toward and away from the workpiece in order to produce a cam profile thereon. The control of cooperational movements of the workpiece and the grinding wheel is accomplished, in common and general cases, by a so called numerical control system" which uses electric pulses supplied from suitable interpolators in a precalculated order and number. In case of a cam profile which is represented by cam rotary angle a and cam lift L, the data a and L must be translated into workpiece rotary angle p and distance Y between the axes of the workpiece and the grinding wheel to control the movements of said workpiece and grinding wheel.

Referring now to HQ. 1, wherein grinding wheel G and workpiece W are shown, the relationship between numberpairs (a,L), (a cam rotary angle, L cam lift) and numberpairs Y) (p workpiece rotary angle, Y distance between the axes of workpiece and grinding wheel) are represented as follows:

ig ighbangled-triangle O Q P,

- Oar in right-angled-triangle SO,

Where R radius of the grinding wheel G;

a angle of rotation of the cam profile determined by a perpendicularm from the axis 0 of the workpiece W to a common tangent at contact point P and a line connecting the axis 0 and the top T of the cam lift or cam rotary annumbers or sometimes in the form of an equation L=L (a).

Conventionally, when the cam profile is given as a group of separate numbers, each of the given points (P P,) on the oz-L coordinates is connected with the neighboring point by straight line segments to produce a desired cam profile as shown in H0. 2. Points (P,, P',-) on p-Y coordinates shown in FIG. 3, corresponding to the points (P,, P,--) on a-L coordinates may be calculated from the equations (1-1) and l2) since the gradients of the straight line segments may be regarded as -equal to differential coefficients at respective points (P,, P,, In conventional systems, the number of pulses corresponding to the thus calculated points (P,, P;--) are registered on a tape and then the tape is applied to the numerical control means of a machine tool to produce a cam profile on the workpiece by controlling the movements of ,theworkpiece and the grinding wheel. Actually, the transformed points, i.e. points (P' P',) on the p-Y coordinates cannot be used as pulse distributing points, since the ordinates and abscissas of each point contain fractional numbers which are too small to be numerically con trolled. Accordingly, the fractional numbers in both the ordinates and abscissas are normally raised or discarded to obtain even numbers which may be numerically controlled, thereby producing a relatively large error or difference between the achieved or approximated cam profile on the workpiece and the desired cam profile. One resultant disadvantage of this approach is that the error exceeds the allowable tolerance at large curvature changes of the cam profile, while being more accurate than necessary at small curvature changes thereof, since the desired cam profile is approximated by straight line segments of uniform interval. The known approach for overcoming this problem is to increase the points in input data, i.e., the points (P., P,--), thereby increasing the number of corresponding points (P',, P,-) used for pulse distribution. However, increasing the number of input data points has complicated the process, making the handling of the input data extremely laborious. Furthermore, the elonnumerical control device and its assembly.

SUMMARY OF THE INVENTION It is a main object of the invention to provide a system to generate an approximated profile on a workpiece.

Another object of the invention is to provide a system to improve accuracy in generating an approximated profile on a workpiece regardless of the amount of input data.

Still another object of the invention is to provide a numerical control system for achieving an approximated profile within allowable tolerance by checking errors between the approximated profile and a desired cam profile.

A still further object of the invention is to provide a system for reducing the amount of input data for numerical control by changing each interval between two adjacent points on the approximated profile in accordance with the curvature changes of the profile.

Still other objects and advantages of the invention will in part be obvious and will in part be apparent from the specification.

The invention accordingly comprises the several steps and the relation of one or more of such steps with respect to each of the others, and the apparatus embodying features of construction, combinations of elements and arrangement of parts which are adapted to effect such steps, all as exemplified in the following detailed disclosure, and the scope of the invention will be indicated in the claims.

DESCRIPTION OF THE DRAWINGS For a fuller understanding of the invention, reference is had to the following description taken in connection with the accompanying drawings, in which:

FIG. 11 is a view showing a cam profile being generated on a workpiece by the rotation of the workpiece and the movement of the tool or grinding wheel toward and away from the workpiece;

FIGS. 2 and 3 are graphs showing a prior art method of approximating the cam profile;

FIG. 4 is a view showing an adaptive approximating method according to the invention;

FIGS. 5 through 8 inclusive are views showing the block diagrams of adaptive'approximating calculation systems according to the invention;

FIG. 9 is a view showing the principle of the second embodiment;

FIG. 10 is a view showing a block diagram of the calculation system used for the second embodiment;

FIG. 11 is a view showing the relationship of workpiece and grinding wheel where the cam profile to be generated on the workpiece is given by roller tappet representation;

FIG. 12 is a view showing the relationship between workpiece and grinding wheel where the cam profile to be generated on the workpiece is represented using rectangular coordinates; and

FIG. 13 is a view showing the relationship of workpiece and grinding wheel where the cam profile to be generated on the workpiece is represented using polar coordinates.

DESCRIPTION OF THE INVENTION Turning first to the preferred embodiments of the arrangement according to the invention, wherein the cam profile is denoted by a plane tappet representation, it is a common practice to provide a machine tool operator, a cam profile in the form of a group of separate numbers consisting of numberpairs of cam rotatory angle a and cam lift L. To transform the number-pairs of points on the a-L coordinates, given as a group of separate numbers, into the number-pairs of points on the coordinates in accordance with the invention, adjacent points on the a-L coordinates are connected to one another by lines represented by suitable equations such as arcs of circles or lines denoted by polynominals to achieve a desired cam profile whereby differential coefficients at every point thereof may be obtained. Thus, the above mentioned equations (11) and (1-2) are solved for Y and p which express a distance between axes of a grinding wheel G and a workpiece W, and a workpiece rotary angle respectively. The workpiece rotary angle p and the distance Y are obtained from the equations (1-1) and (1-2) by an electric computing system, the output of which is used to produce a cam profile by means of a numerically controlled grinding machine.

The process of approximating the desired cam profile according to the invention proceeds as follows. As an initial step, some consideration must be paid to the amount the numerically controlled grinding machine to which the pulse distributing system according to the invention is applied is moved by a single pulse. Assume that the workpiece is rotated one-twentieth by one pulse and the grinding wheel is shifted one fivehundredth mm. by one pulse. These amounts, one-twentieth and one five-hundredth mm. will be hereinafter referred to as unit rotary angle and unit shift respectively. It is necessary to discard or raise fractional numbers less than the unit rotary angle and unit shift since fractional numbers less than said units cannot be utilized to numerically control the machines in question. These discarded or raised numbers are primed herein and will be hereinafter referred to as pulse representation numbers. For instance, p' and Y are pulse representation numbers of p and Y respectively. The ordi nate Y, of arbitrary pulse representation point P'.-=( Y,)(Oi n) correpsonding to pulse representation angle p, is obtained as follows. Finding the remainder s, between the arbitrary pulse representation 'angle p, and the angle p obtained from the equation 1-2) in the vicinity of the angle p',,

A pair of number-pairs (a L and (04, L which satisfy the following condition may be obtained from the equation (2-1).

So the equation (l-l) is solved for Y and Y|2 using the solutions (a L and (11, L The Y and Y are the ordinates of points P and P on the cam profile shown in FIG. 4. The number on the Y-axis of point P, which is an approximated number of point P on the cam profile corresponding to the abscissa p, is obtained by proportional allotment.

i2YiinYia where, Y, ordinate of the point P,,

e abscissa of the point P minus p,

a abscissa of the point P minus p',.

The values of Y, from the equation (4-1) are not equal to a multiple of the unit shift in the general case. Accordingly, the fractional portion of Y, less than the unit shift must be discarded or raised. The number-pair (p',, Y',) of the arbitrary pulse representation point P, is thus obtained and thus, the number-pairs corresponding to points P' P',, may be obtained in the same manner.

Referring now to FIG. 5 which shows a translation circuit according to the invention, a cam lift calculator I computes a desired cam profile from the input data by connecting neighboring points in the input data to one another using curved lines represented by suitable equations such as arcs of circles or polynominals. A differentiator 2 is capable of computing the differential coefficient (BL/8a) of the desired cam profile at the cam rotary angle a furnished from input lead 12. The circuit includes adders 3, 6 and 9, divider 4, transformer 5 adapted to transform the output of subtractor 4 into the inverse tangent thereof, multipliers 7 and 8, calculator 10 adapted to produce at its input the square root of its input, and register 11 for presetting the grinding wheel radius R.

Carn lift calculator l and differentiator 2 respectively compute the cam lift L from the numbers given as separate numbers and differential coefficient (8L/8a) corresponding to the cam rotary angle a furnished from input lead 12. The outputs L and R of the calculator l and the register 11 are supplied to the adder 3, the output of which is shifted to the divider 4. Simultaneously from the differentiator 2, the differential coefficient (81.1601) is shifted to the divider 4 in which the output SL/Saa of the differentiator 2 is divided by the output (R+L) of the adder 3. The calculated information from the divider 4 is applied to the transformer 5 which effects the transformation from the information 0L a/ R L) to inverse tangent 0L tan /(R+L) The workpiece rotary angle p is obtained by adding the input a to the output of the transformer at the adder 6.

The outputs from the adder 3 and the differentiator 2 are also applied to the multipliers 7 and 8 respectively wherein said outputs are squared. The adder 9 is simultaneously supplied with the squared information (R+L) and (BL/8a) from the multipliers 7 and 8 to be added to one another. The distance Y is obtained by applying the output of the adder 9 to calculator 10 to obtain the square root thereof. The resultant solution p and Y are shifted to hereinafter described circuits over lead 13 and 14 respectively.

Specifically, p is applied to the circuit shown in FIG. 6 which consists of registers and 16, flip-flop 17, subtractors 18, 19 and 20, comparator 21, multiplier 22 and gates 23, 24, 25, 26 and 27.

Applying an arbitrary workpiece rotary angle p in pulse representation to a register 15 in FIG. 6, the angle p" is shifted to the subtractor 18 and the register 16. The register 16 in turn applies the angle p, to the subtractors l9 and 20, and to lead 12 of the translation circuit shown in FIG. 5 as the cam rotary angle a. A workpiece rotary angle p,, representing a first attempt at the desired workpiece rotary angle p, corresponding to the cam angle a, (in this case the angle p.) is computed in the translation circuit and applied to a subtractor 18 over lead 13 wherein the remainder q=p,1r, between p and p, is computed. Through the gate 27, the remainder c, is furnished to a comparator 21 which effects the comparison between the remainder e, and half of the unit rotary angle. When the absolute value a l of the remainder is larger than the half of the unit rotary angle, a signal is produced to open gate 25. The contents of a subtractor 19, consisting of the difference between p shifted from the register 16 and the remainder is furnished to register 16 through gate 25 to remove the present angle p, from said register and substitute the remainder p -1 calculated at subtractor 19. This newly calculated value (p' -q) is shifted to subtractors l9 and 20, and the translation circuit shown in FIG. 5. A new rotary angle p representing a second attempt at the desired workpiece rotary angle p, corresponding to the new cam angle 01,, (in this case (p' -q) from register 16) is calculated in the translation circuit of FIG. 5 and furnished to subtractor 18 over lead 13. The remainder s, between p, and p, is calculated at subtractor 18 and compared with half of the unit rotary angle at comparator 21. In this manner, the calculating and comparing processes are repeated until the remainder e, becomes less than half of the unit rotary angle. At this time, the contents of register 16 would consist of (drowns-e When remainder e, is less than half of the rotary angle, gate 25 is closed and gate 26 is opened by a signal produced by comparator 21 whereby the last computed information (p' e,...e, -2e,,) in subtractor is shifted to the register 16, the input to subtractor 20 being from register 16 and multiplier 22. Said multiplier produces at its output two times value of the remainder e, multiplied at the multiplier 22. Note that FIG. 6 shows the contents of subtractors 18 and 19 and the output of gate after the first attempt, and the contents of subtractor 20 and the output of gate 26 after the nth attempt.

In addition to opening gate 26, the presence of an e less than half of the unit rotary angle also opens gate 23 to obtain an output signal S which is applied over lead 48 to gates 30, 32 and 34, shown in FIG. 7, to open them. Upon the opening of gates 30, 32 and 34, the values of p and Y computed in the translation circuit at that time and the value of remainder a computed at the subtractor 18 at that time, are applied to said gates through leads 13, 14 and 29, pass through said gates and are registered as p Y and e in suitable registering means. The value of p was computed in the translation circuit based on the cam angle a (in this case (p',-s,-...c In this manner, a number-pair consisting of a rotary angle smaller or larger than p, but within the half of a unit rotary angle to p and the distance corresponding to the rotary angle, for instance, a number-pair of a point P,,=(p,,, Y in FIG. 4, are obtained.

When the signal S is produced, the signal S is also applied to the flip-flop 17 to inverse said flip-fiop so as to open gate 24. At this time, the comparator 21 is deenergized due to the closing of gate 27 through the inversion of said flip-flop. When the rotary angle p computed in the translation circuit based on the cam angle a (in this case (p',-e -...-e, -2e,)) is applied to gate 24 over lead 13, an output signal S, passes through the gate 24 opened by performance of the flip-flop 17 and is supplied to gates 31, 33 and 35, shown in FIG. 7 to open them.

Since the gates 31, 33 and 35 are opened, p, Y and e corresponding to the information (p're ur-e -ie are registered 88 pm, r: and e in the suitable registering means. When the registering operation is accomplished, a reset signal is applied to flip-flop 17 from lead 28 to inverse said flip-flop. Therefore, a pair of number-pairs within the half of unit rotary angle from the pulse representation number p',, the coordinates corresponding to the points P and P in FIG. 4, are obtained. It is to be understood that a pair of number-pairs at both sides of the pulse representation angle p, are most preferable but are not an essential requirement.

Referring to FIG. 8, it is seen that Y and Y are applied to multipliers 42 and 43 through leads 38 and 39 respectively. The remainder e is applied to multiplier 42 and subtractor 44 over a lead 40. The remainder q, is also applied to the multiplier 43 and subtractor 44 over a lead 41. The product (c X Y is calculated in multiplier 42, the product (e,, Y in the multiplier 43, and the remainder (s e in the subtractor 44. Contents of the multipliers 42 and 43 are shifted to a subtractor 45 which operates therein to achieve the remainder (a x Y XY Thus, Y, is obtained by dividing the output (a x Y e Y of the subtractor 45 of the output (e -e of the subtractor 44 at a divider 46. To obtain a pulse representation number Y,, the fractional number of the obtained ordinate Y is discarded or raised at a calculator 70 so that the pulse representation Y, is the nearest point to the desired cam profile as shown in FIG. 4. In the same manner as above mentioned, any ordinates of pulse representation numbers Y. (r'=== 0, l, 2,n) are obtained by supplying pulse representation numbers p, (i=0, 1, 2-,n) to the register 15 successively.

Each interval between the abscissas of two adjacent points in pulse representation points (P',,, P',,) may be chosen in accordance with the curvature changes of the desired cam profile so that the pulse representation points may produce a very highly accurate cam profile. Since, each interval between two adjacent points in the points (P',,,,P',,) may be counted by unit rotatory angle and unit shift, command pulses equal to the number corresponding to each said interval may be distributed to the controllers of the numerically controlled machine tool during a predetermined time for controlling the rotation of the workpiece and the feeding movement of the grinding wheel. The number-pair representative of each of the points (P,,,,P',,) or each remainder between two adjacent points is preferably registered on a magnetic tape or a paper tape which may be used repeatedly to reduce the operation of the computing system so that same number of pulses are distributed repeatedly every rotation of the workpiece.

One advantage of the above-mentioned pulse distributing system is that the accuracy of the approximation of the desired cam profile is heightened regardless the amount of the given input data, since each interval between two adjacent points may be changed in accordance with curvature changes of the desired cam profile through controlling the spacings of the workpiece rotatory angles in the pulse representations which are given to the register 15. Moreover, it is also possible, without sacrificing the accuracy of the approximation, to reduce the total amount of the pulse representation points by shortening the intervals at large curvature changes of the desired cam profile and by elongating the intervals at small changes thereof.

Referring now to FIGS. 9 and 10, the second embodiment according to the invention is shown therein. Said second embodiment is particularly related to a modified pulse distributing system for approximating several successive points by a straight line segment within a predetermined allowable tolerance. Each error between the segment and a portion of desired cam profile to be approximated by the segment are checked so as to automatically change the length of the segment, whereby the number of number-pairs to be used as input data for generating a cam profile is reduced in total by elongating the intervals at small curvature changes of the desired cam profile and by shortening the intervals at large curvature changes thereof. And furthermore, the accuracy in approximating the desired cam profile is heightened thereby.

It is to be appreciated that the method for obtaining the number-pairs (p, Y) on the p-Y coordinates, Y and p representing the distance between the axes of grinding wheel and workpiece and the workpiece rotary angle respectively, from the data defining the desired cam profile is not limited in particular ways, but the method described as a prior art in this specification is also available. However, the method for obtaining points along the desired cam profile such as the point P, (in FIG. 4) by means of the above-described embodiment is used in the modified form of the invention.

Referring to FIG. 9, assume that the pulse representation points (P,,,,P',,) in the neighborhood of the desired cam profile DC are obtained by the above-described system. The number-pair (9,) (i=1, 2.-,n), the ith number-pair counted from t e start point P for approximating the desired cam profile, are the transformed coordinates of Y',), when the start point P',,=(p,,, Y,,) is taken as the origin of the @coordinates, as shown in FIG. 9, the coordinates transformation being performed by calculating (pip',,) and Y;- Y,,) with respect to the number-pair (p',, Y',) of the point P,. These transformed value are accumulated in a suitable register. The number n of the terminal point l is decided experimentally, and the approximating process may be more swiftly accomplished by changing the number it according to the curvature changes of the displacement curve of the desired cam profile. Thus, the number of the terminal point P,, to be tried first is given experimentally and in the case of FIG. 9, n=6. The description of the second embodiment is based on an arbitrarily selected n since n may be chosen at will.

To approximate the successive points (P,,,,P,,) in the neighborhood of the cam profile by a straight line segment,

the equation of the segment P P is obtained as When the distance e, at every point, i.e., points (P,,,P,,, is smaller than allowable tolerance 6, the successive points (P -P may be approximated by the segment P P Number-pair would be registered in a suitable tape or some other suitable registering means for numerical control and electric pulses according to the tape would be distributed along the straight line segment P P to the controllers of the machine tool to generate the approximated cam profile.

When the distance e, of a certain point among points (P,,, ,P,,) is larger than the predetermined allowable tolerance, the segment P P' may not be used as an approximating segment, and the terminal point P,, of the segment P P is hifled by one point toward the start point P,, and the segment i"',,l",, is used for error checking. Accordingly,

The error distance or remainder e, between each point on the successive point (P,,,,P,,,,) and the segment P,P',, is checked in tl i e s ame manner as before to determine whether the segment P',,P,, may be used as an approximating line or not. if the error at a certain point on the desired cam profile DC is still out of the predetermined allowable tolerarmhe processes of shifting the terminal point of the segment ll',,i",, and checking the error are repeated until the error distance over the cam profile portion to be approximated by a straight line segment becomes smaller than the predetermined allowable tolerance. At this point, the terminal point of the segment is registered on the suitable means and in turn, taken as a new selected so as to check error distances for the next increment. Through these processes, the desired cam profile is approximated over the entire length thereof by a plurality of straight line segments which do not produce any errors beyond the predetermined allowable tolerance 6.

A calculation system for carrying out the second embodiment is shown in FIG. MD. p-memory device 50 and Y-memory device 511 accumulate a group of number-pairs (p' Y',) (where i=1, 2,,n) which are applied from register R5 and the calculator 7th through input lead 52 and 47 respectively; the input lead 52 not being shown in FIG. 6. The coordinates p, and Y of the start point P are registered in the registers 56 and 57 respectively. Subtractors 54- and 55 are adapted to obtain. number-pairs on@:oordinates, the origin of which is point P,,, by subtracting p and Y, from p, and Y, respectively.@registering device 58 andregistering device 59 for accumulating number-pairs@,,- supply desired coordinates through leads 58a and 58b, and leads 59a and 5% respectively in response to actuating signals obtained from registers 60 and 6B in which said actuating signals are preset. Divider 62, multiplier 63 and subtractor 54 operate on their respective inputs to calculate the equation (5-1). A comparator 6S compares the calculated result with the predetermined allowable tolerance 8 to determine whether or not to change the preset numbers in registers 60 and 6t. Gates do and 67 may pass the value of number-pairs of the terminal points of the straight line segments to an interpolator which distributes electric pulses to the controllers of the machine tool to numerically control said machine tool along said straight line segments.

Number n is preset in register 60 to determine the numberpair of the terminal point P',, at the time that the number-pair (p',,, Y',,) of the start point P, is preset in the registers 56 and 57, and the number-pairs on the@:oordinates, the origin of which is the start point P',,, are accumulated in the@ -registering device 58 and-registering device 59. The output of the registering devices 53 and 59, namely the coordinates@ and@,, of the terminal point P',,, are applied to a divider 62 whereiriEQ/Qoj is computed. Number 1' equal to (n-l is preset in register on so as to select the ith number-pair from the registers 53 and 59.@,, selected from register 58 is multiplied with,,/@, at multiplier 63. Subtractor 64 calculates the error distance or remainder 2, equal to applied from register 59 and multiplier 63 respectively. Remainder e, is shifted to the comparator 65 which compares it with predetermined allowable tolerance 8. lfe 5, the preset number i in the register er is changed to (i-l) and the remainder e corresponding to the (i l)th, (i.e., the (n2)t h) number-pair selected from the registers 58 and 59 is compared with the predetermined allowable tolerance at the comparator 65. As long as the remainders at all points are smaller than the predetermined allowable tolerance 8, the calculating and comparing processes are repeated until. i=l. When i=l, gates so and 67 are opened by the signal from a discriminator 68 to pass the number'pair,,,',, of the terminal point P, therethrough whereby a portion of the desired cam profile, i.e., the curved line (P,,,. ?,,)(in H6. Q) is approximated by a single straight line segment P',,P,,.

However, when the remainder corresponding to a certain point exceeds the tolerance 5 in the comparing process, the content of the register at) is changed from n to (nl) by a command signal from the comparator 65 whereby the data of the (g l)th point is picked out from the registers 53 and 59 and the calculating and comparing processes are repeated from the beginning. By shifting the nth point to the (n l )th point, the segment W is changed into the segment FTP Accordingly, in case of FIG. 9, the error distance or the remainder between the desired cam profile and the segment P',,P, becomes smaller than before. Again, assuming every remainder is within the allowable tolerance 8, the calculating starting point. A new terminal point of a new segment is and comparing processes are repeated until i=1 in the same manner as above-described. When i--l, the number-pair of the terminal point of the segment P T are passed by the gates 66 and 67 which are opened by the signal from the discriminator 68. in the manner described, a suitable straight line segment for approximating a portion of the desired cam profile is determined and the terminal numberpair of the segment is obtained by changing the contents of either register 60 or 61 or both of them in response to the output of the comparator 65. Thus, the approximation of a certain portion of the desired cam profile is accomplished and the terminal point of the segment is used as a start point in the next step and the same calculating and comparing processes are repeated. Accordingly, the entire length of the desired cam profile may be approximated by a plurality of straight line segments without any substantial errors beyond the predetermined allowable tolerance. According to the second embodiment of the invention, the input data required for numerical control are reduced substantially over that of prior art, and the accuracy of approximation is almost constant over the entire length of the desired cam profile in spite of curvature changes thereof. Furthermore, this system is very convenient in practical use in that the tape is shortened.

It is to be appreciated that memory devices 50 and 51 are preferably omitted by. direct connection of the circuits, shown in FIG. 10, and the circuits shown in FIGS. to 8 inclusive. In this case, the coordinates p, and Y, calculated in the circuits are transformed to the coordinatea@, and', at the subtractors 54 and 55 respectively which are registered in the registering devices 58 and 59.

Error checking is begun at n th point P from the start point P, in the second embodiment and continued till the error becomes less than allowable tolerance 25 by shifting the terminal point toward the start point P,,, but it is also possible to check the error by extending the terminal point of the segment from the next start point P The straight line segment, used as an approximating segment is determined by connecting the start point P, and a point which is one point on the start point side of that point at which the error distance is larger than the allowable tolerance 5. By this method, the same results and merits as the second embodiment may be obtained.

Alternatively, when the errors exceed the predetermined allowable tolerance, the terminal point may also be shifted within the allowable tolerance 8 on the same axis of rotar angle. For instance, a point P, is selected and the segment P 'ZF', is used as an approximating segment if there are not any points on the cam profile, i.e., in case of FIG. 9, points P,, P and P the errors of which do not exceed the allowable tolerance. if there is a point the error of which exceeds the allowable tolerance, the tenninal point of the segment is shifted toward or away from the start point P,,, and the calculating and comparing processes are repeated in the same manner as above-described.

The foregoing is based on the case wherein the cam profile is represented by a plane tappet representation having the equation [F (0:). However, other representations of the cam profile such as the roller tappet representation, M=f(6); the rectangular coordinate representation, Y=f(x); and the polar coordinate representation, r =f(6 are also utilized to distribute the pulses for controlling machine tools in the same manner as described herein, since the method for transforming each equation to the distance Y between the axes of the grinding wheel and the workpiece and the rotary angle p of the workpiece is not substantially different from the method described above.

Accordingly, in the case of each of said representatives, the transformation equation is described as follows:

a. roller tappet representation (FIG. 11)

M sin (ct-0) Y=4)0' distance between the axes of workpiece and grinding wheel;

p= workpiece rotary angle;

L=66= cam lift by plane tappet representation;

l 0 a cam rotary angle by plane tappet representation;

M=UO cam lift by roller tappet representation;

0 cam rotary angle by roller tappet representation;

R radius of grinding wheel;

r= radius of roller; and

l 5 P= grinding point.

b. rectangular coordinate representation (FIG. 12): As understood from FIG. 12, to obtain Y and is to obtain the orbit of the axis of grinding wheel which goes around the fixed cam.

2 a dy /1+ 1! -r f. a a; R

- tan l P where,

Y=00' distance between the axes of cam and grinding wheel;

p workpiece rotary angle; and,

P= grinding point.

c. Polar coordinates representation (FIG. 13):

=Vmm T COS (oz-0 where, Y=W distance between the axes of workpiece and grinding wheel;

p workpiece rotary angle;

r,,==6P cam profile radius by polar coordinates representation;

0,, cam rotary angle by polar coordinates representation;

L cam lift by plane tappet representation;

a cam rotary angle by plane tappet representation; and

P= grinding point.

It will thus be seen that the objects set forth above, among those made apparent from the preceding description, are efficiently attained and, since certain changes may be made in carrying out the above method and in the constructions set forth without departing from the spirit and scope of the invention, it is intended that all matter contained in the above description and shown in the accompanying drawings shall be interpreted as illustrative and not in a limiting sense.

What is claimed is:

1. In a numerically controlled machine tool having at least one controller and a pulse distributing system for generating an approximate profile on a workpiece by controlling the. cooperational movements of the workpiece and an operative tool in response to input data, the improvement in said pulse ill the straight line segments between selected number-pairs to approximate a profile represented by said numberpairs by checking a difference between said profile and each of said straight line segments and shifting a terminal point of each of said straight line segments in a manner that said difference becomes smaller than a predetermined allowable tolerance, and interpolator means for distributing electric pulses to at least one controller of said machine tool along said straight line segments as changed.

2. A numerically controlled machine tool as recited in claim 1, wherein said error checking means changes the length of each of said straight line segments by shifting a terminal point thereof toward a start point thereof until said difference becomes smaller than said allowable tolerance.

3. A numerically controlled machine tool as recited in claim 1, wherein said error checking means changes the length of each of said straight line segments by extending a terminal point thereof from a start point thereof so long as said difference is smaller than said allowable tolerance.

41. A numerically controlled machine tool as recited in claim 1, wherein said error checking means calculates the difference by changing the terminal point of each of said straight line segments by changing the pulse representation value of either said angle or said distance within allowable tolerance while maintaining the other of said terminal point pulse representation values fixed, when the difference exceeds said allowable tolerance.

5. In a numerically controlled machine tool having at least one controller and a pulse distributing system for generating an approximated profile on a workpiece by controlling the cooperational movements of the workpiece and an operative tool in response to input data, the improvement in said pulse distributing system comprising:

means operable to transform said input data into a profile represented by pulse representation values of workpiece rotary angle and distance between the axes of the workpiece and the tool,

error checking means for changing the length of each of the straight line segments between selected pulse representation values to approximate said profile by checking a difference between said profile and each of said straight line segments and shifting a terminal point of each of said straight line segments in a manner that said difference becomes smaller than a predetermined allowable tolerance, and

interpolator means for distributing electric pulses to at least one controller of said machine tool along said straight line segments as changed.

6. A numerically controlled machine tool as recited in claim 5, wherein said error checking means changes the length of each of said straight line segments by shifting a terminal point thereof toward a start point thereof until said difference becomes smaller than said allowable tolerance.

7. A numerically controlled machine tool as recited in claim 5, wherein error checking means changes the length of each of said straight line segments by extending a terminal point thereof from a start point thereof so long as said difference is smaller than said allowable tolerance.

8. A numerically controlled machine tool as recited in claim 5, wherein said error checking means calculates the difference by changing the terminal point of each of said straight line segments by changing the pulse representation value of either said angle or said distance within allowable tolerance while maintaining the other of said terminal point pulse representation values fixed, when said difference exceeds said allowable tolerance.

9. In a numerically controlled machine tool having at least one controller and a pulse distributing system for generating an approximated profile on a workpiece by controlling the cooperational movements of the workpiece and an operative tool in response to input data, the improvement in said pulse distributing system comprising:

computing means including means for obtaining a first desired profile from said input data, means for transforming said first desired profile into a second desired profile represented by a workpiece rotary angle and a distance between the axes of the workpiece and the tool, and means for determining a pair of points on said second desired profile within a predetermined value from each of selected pulse representation values of said angle, means for calculating the pulse representation value of said distance nearest to said second desired profile and corresponding to each of said selected pulse representation values of said angle by using said pair of points, and

an interpolator means for distributing electric pulses to at least one controller of said machine tool for controlling the rotation of the workpiece and the feeding movement of the tool according to said pulse representation values of said angle and said distance.

It). A numerically controlled machine tool as recited in claim 9, wherein one of said pair of points is located on one side of each of said selected pulse representation values of said angle and the other of said pair of points is located on the other side thereof.

11. A numerically controlled machine tool as recited in claim 9, wherein the both of said pair of points are located on one side of each of said selected pulse representation values of said angle.

12. A numerically controlled machine tool as recited in claim 9, wherein said computing means selects said pulse representation values of said angle with difierent spacings therebetween in accordance with input information applied to said computing means.

13. A numerically controlled machine tool as recited in claim 9, wherein said system further comprises memory means for registering said pulse representation values of said angle and said distance so that said interpolator means may read said pulse representation values from said memory means.

M. In a numerically controlled machine tool having at least one controller and a pulse distributing system for generating an approximated profile on a workpiece by controlling the cooperational movements of the workpiece and an operative tool in response to input data, the improvement in said pulse distributing system comprising:

computing means including means for obtaining a first desired profile from said input data by connecting neighboring points in said input data to one another, means for transforming said first desired profile into a second desired profile represented by a workpiece rotary angle and a distance between the axes of the workpiece and the tool, and means for determining a pair of points on said second desired profile within a predetermined value from each of selected pulse representation values of said distance, means for calculating the pulse representation value of said angle nearest to said second desired profile and corresponding to each of said selected pulse representation values of said distance by using said pair of points, and

an interpolator means for distributing electric pulses to at least one controller of said machine tool for controlling the rotation of the workpiece and the feeding movement of the tool according to said pulse representation values of said angle and said distance.

115. A numerically controlled machine tool as recited in claim M, wherein one of said pair of points is located on one side of each of said selected pulse representation values of said angle and the other of said pair of points is located on the other side thereof.

16. A numerically controlled machine tool as recited in claim 14, wherein the both of said pair of points are located on one side of each of said selected pulse representation values of said angle.

117. A numerically controlled machine tool as recited in claim M, wherein said computing means selects said pulse representation values of said angle with different spacings therebetween in accordance with input information applied to said computing means.

18. A numerically controlled machine tool as recited in claim 14, wherein said system further comprises memory means for registering said pulse representation values of said angle and said distance so that said interpolator means may read said pulse representation values from said memory means.

19. in a numerically controlled machine tool having at least one controller and a pulse distributing system for generating an approximated profile on a workpiece by controlling the cooperational movements of the workpiece and an operative tool in response to input data, the improvement in said pulse distributing system comprising:

computing means including means for obtaining a first desired profile from said input data by connecting neighboring points in said input data to one another,

means for transforming said first desired profile into a second desired profile represented by a workpiece rotary angle and a distance between the axes of the workpiece and the tool, and means for determining a pair of points on said second desired profile within a predetermined value from each of selected pulse representation values of said angle,

means for calculating the pulse representation value of said distance nearest to said second desired profile and corresponding to each of said selected pulse representation values of said angle by using said pair of points, error checking means for changing the length of each of straight line segments between selected pulse representation values to approximate a profile represented by said pulse representation values of said angle and said distance by checking a difference between said last-named profile and each of said straight line segments in a manner that said difference becomes smaller than a predetermined allowable tolerance, and

an interpolator means for distributing electric pulses to at least one controller of said machine tool for controlling the rotation of the workpiece and the feeding movements of the tool according to said pulse representation values of said angle and said distance.

20. A numerically controlled machine tool as recited in claim 19, wherein said error checking means changes the length of each of said straight line segments by shifting a terminal point thereof toward a start point thereof until said difference becomes smaller than said allowable tolerance.

21. A numerically controlled machine tool as recited in claim 19, wherein error checking means changes the length of each of said straight line segments by extending a terminal point thereof from a start point thereof so long as said difference is smaller than said allowable tolerance.

22. A numerically controlled machine tool as recited in claim 19, wherein said error checking means calculates the difference by changing the terminal point of each of said straight line segments by changing the pulse representation value of either said angle or said distance within allowable tolerance while maintaining the other of said tenninal point pulse representation values fixed, when said difference exceeds said allowable tolerance.

23. A numerically controlled machine tool as recited in claim 19, wherein said system further comprises memory means for registering said pulse representation values of said angle and said distance so that said interpolator means may read said pulse representation values from said memory means.

24. in a numerically controlled machine tool having at least one controller and a pulse distributing system for generating an approximated profile on a workpiece by controlling the cooperational movements of the workp|ece and an operative tool in response to input data, the improvement in said pulse distributing system comprising:

computing means including means for obtaining a first desired profile from said input data by connecting neighboring points in said input data to one another,

means for transforming said first desired profile into a second desired profile represented by a workpiece rotary angle and a distance between the axes of the workpiece and the tool, and means for determining a pair of points on said second desired profile within a predetermined value from each of selected pulse representation values of said distance,

means for calculating the pulse representation value of said angle nearest to said second desired profile and corresponding to each of said selected pulse representation values of said distance by using said pair of points,

error checking means for changing the length of each of straight line segments between selected pulse representation values to approximate a profile represented by said pulse representation values of said angle and said distance by checking a difference between said last-named profile and each of said straight line segments in a manner that said difference becomes smaller than a predetennined allowable tolerance, and

an interpolator means for distributing electric pulses to at least one controller of said machine tool for controlling the rotation of the workpiece and the feeding movements of the tool according to said pulse representation values of said angle and said distance.

25. A numerically controlled machine tool as recited in claim 24, wherein said error checking means changes the length of each of said straight line segments by shifting a terminal point thereof toward a start point thereof until said difference becomes smaller than said allowable tolerance.

26. A numerically controlled machine tool as recited in claim 24, wherein error checking means changes the length of each of said straight line segments by extending a terminal point thereof from a start point thereof so long as said difference is smaller than said allowable tolerance.

27. A numerically controlled machine tool as recited in claim 24,'wherein said error checking means calculates the difference by changing the terminal point of each of said straight line segments by changing the pulse representation value of either said angle or said distance within allowable tolerance while maintaining the other of said terminal point pulse representation values fixed, when said difference exceeds said allowable tolerance.

28. A numerically controlled machine tool as recited in claim 24, wherein said system further comprises memory means for registering said pulse representation values of said angle and said distance so that said interpolator means may read said pulse representation values from said memory means. 

1. In a numerically controlled machine tool having at least one controller and a pulse distributing system for generating an approximate profile on a workpiece by controlling the cooperational movements of the workpiece and an operative tool in response to input data, the improvement in said pulse distributing system comprising: means operable to transform said input data into number-pairs each consisting of workpiece rotary angle and distance between the axes of the workpiece and the tool, error checking means for changing the length of each of the straight line segments between selected number-pairs to approximate a profile represented by said number-pairs by checking a difference between said profile and each of said straight line segments and shifting a terminal point of each of said straight line segments in a manner that said difference becomes smaller than a predetermined allowable tolerance, and interpolator means for distributing electric pulses to at least one controller of said machine tool along said straight line segments as changed.
 2. A numerically controlled machine tool as recited in claim 1, wherein said error checking means changes the length of each of said straight line segments by shifting a terminal point thereof toward a start point thereof until said difference becomes smaller than said allowable tolerance.
 3. A numerically controlled machine tool as recited in claim 1, wherein said error checking means changes the length of each of said straight line segments by extending a terminal point thereof from a start point thereof so long as said difference is smaller than said allowable tolerance.
 4. A numerically controlled machine tool as recited in claim 1, wHerein said error checking means calculates the difference by changing the terminal point of each of said straight line segments by changing the pulse representation value of either said angle or said distance within allowable tolerance while maintaining the other of said terminal point pulse representation values fixed, when the difference exceeds said allowable tolerance.
 5. In a numerically controlled machine tool having at least one controller and a pulse distributing system for generating an approximated profile on a workpiece by controlling the cooperational movements of the workpiece and an operative tool in response to input data, the improvement in said pulse distributing system comprising: means operable to transform said input data into a profile represented by pulse representation values of workpiece rotary angle and distance between the axes of the workpiece and the tool, error checking means for changing the length of each of the straight line segments between selected pulse representation values to approximate said profile by checking a difference between said profile and each of said straight line segments and shifting a terminal point of each of said straight line segments in a manner that said difference becomes smaller than a predetermined allowable tolerance, and interpolator means for distributing electric pulses to at least one controller of said machine tool along said straight line segments as changed.
 6. A numerically controlled machine tool as recited in claim 5, wherein said error checking means changes the length of each of said straight line segments by shifting a terminal point thereof toward a start point thereof until said difference becomes smaller than said allowable tolerance.
 7. A numerically controlled machine tool as recited in claim 5, wherein error checking means changes the length of each of said straight line segments by extending a terminal point thereof from a start point thereof so long as said difference is smaller than said allowable tolerance.
 8. A numerically controlled machine tool as recited in claim 5, wherein said error checking means calculates the difference by changing the terminal point of each of said straight line segments by changing the pulse representation value of either said angle or said distance within allowable tolerance while maintaining the other of said terminal point pulse representation values fixed, when said difference exceeds said allowable tolerance.
 9. In a numerically controlled machine tool having at least one controller and a pulse distributing system for generating an approximated profile on a workpiece by controlling the cooperational movements of the workpiece and an operative tool in response to input data, the improvement in said pulse distributing system comprising: computing means including means for obtaining a first desired profile from said input data, means for transforming said first desired profile into a second desired profile represented by a workpiece rotary angle and a distance between the axes of the workpiece and the tool, and means for determining a pair of points on said second desired profile within a predetermined value from each of selected pulse representation values of said angle, means for calculating the pulse representation value of said distance nearest to said second desired profile and corresponding to each of said selected pulse representation values of said angle by using said pair of points, and an interpolator means for distributing electric pulses to at least one controller of said machine tool for controlling the rotation of the workpiece and the feeding movement of the tool according to said pulse representation values of said angle and said distance.
 10. A numerically controlled machine tool as recited in claim 9, wherein one of said pair of points is located on one side of each of said selected pulse representation values of said angle and the other of said pair of points is located on the other side thereof.
 11. A numerically controlled machine tool as recited in claim 9, wherein the both of said pair of points are located on one side of each of said selected pulse representation values of said angle.
 12. A numerically controlled machine tool as recited in claim 9, wherein said computing means selects said pulse representation values of said angle with different spacings therebetween in accordance with input information applied to said computing means.
 13. A numerically controlled machine tool as recited in claim 9, wherein said system further comprises memory means for registering said pulse representation values of said angle and said distance so that said interpolator means may read said pulse representation values from said memory means.
 14. In a numerically controlled machine tool having at least one controller and a pulse distributing system for generating an approximated profile on a workpiece by controlling the cooperational movements of the workpiece and an operative tool in response to input data, the improvement in said pulse distributing system comprising: computing means including means for obtaining a first desired profile from said input data by connecting neighboring points in said input data to one another, means for transforming said first desired profile into a second desired profile represented by a workpiece rotary angle and a distance between the axes of the workpiece and the tool, and means for determining a pair of points on said second desired profile within a predetermined value from each of selected pulse representation values of said distance, means for calculating the pulse representation value of said angle nearest to said second desired profile and corresponding to each of said selected pulse representation values of said distance by using said pair of points, and an interpolator means for distributing electric pulses to at least one controller of said machine tool for controlling the rotation of the workpiece and the feeding movement of the tool according to said pulse representation values of said angle and said distance.
 15. A numerically controlled machine tool as recited in claim 14, wherein one of said pair of points is located on one side of each of said selected pulse representation values of said angle and the other of said pair of points is located on the other side thereof.
 16. A numerically controlled machine tool as recited in claim 14, wherein the both of said pair of points are located on one side of each of said selected pulse representation values of said angle.
 17. A numerically controlled machine tool as recited in claim 14, wherein said computing means selects said pulse representation values of said angle with different spacings therebetween in accordance with input information applied to said computing means.
 18. A numerically controlled machine tool as recited in claim 14, wherein said system further comprises memory means for registering said pulse representation values of said angle and said distance so that said interpolator means may read said pulse representation values from said memory means.
 19. In a numerically controlled machine tool having at least one controller and a pulse distributing system for generating an approximated profile on a workpiece by controlling the cooperational movements of the workpiece and an operative tool in response to input data, the improvement in said pulse distributing system comprising: computing means including means for obtaining a first desired profile from said input data by connecting neighboring points in said input data to one another, means for transforming said first desired profile into a second desired profile represented by a workpiece rotary angle and a distance between the axes of the workpiece and the tool, and means for determining a pair of points on said second desired profile within a predetermined value from each of selected pulse representation values of said angle, means for calculating the pulse representation value oF said distance nearest to said second desired profile and corresponding to each of said selected pulse representation values of said angle by using said pair of points, error checking means for changing the length of each of straight line segments between selected pulse representation values to approximate a profile represented by said pulse representation values of said angle and said distance by checking a difference between said last-named profile and each of said straight line segments in a manner that said difference becomes smaller than a predetermined allowable tolerance, and an interpolator means for distributing electric pulses to at least one controller of said machine tool for controlling the rotation of the workpiece and the feeding movements of the tool according to said pulse representation values of said angle and said distance.
 20. A numerically controlled machine tool as recited in claim 19, wherein said error checking means changes the length of each of said straight line segments by shifting a terminal point thereof toward a start point thereof until said difference becomes smaller than said allowable tolerance.
 21. A numerically controlled machine tool as recited in claim 19, wherein error checking means changes the length of each of said straight line segments by extending a terminal point thereof from a start point thereof so long as said difference is smaller than said allowable tolerance.
 22. A numerically controlled machine tool as recited in claim 19, wherein said error checking means calculates the difference by changing the terminal point of each of said straight line segments by changing the pulse representation value of either said angle or said distance within allowable tolerance while maintaining the other of said terminal point pulse representation values fixed, when said difference exceeds said allowable tolerance.
 23. A numerically controlled machine tool as recited in claim 19, wherein said system further comprises memory means for registering said pulse representation values of said angle and said distance so that said interpolator means may read said pulse representation values from said memory means.
 24. In a numerically controlled machine tool having at least one controller and a pulse distributing system for generating an approximated profile on a workpiece by controlling the cooperational movements of the workpiece and an operative tool in response to input data, the improvement in said pulse distributing system comprising: computing means including means for obtaining a first desired profile from said input data by connecting neighboring points in said input data to one another, means for transforming said first desired profile into a second desired profile represented by a workpiece rotary angle and a distance between the axes of the workpiece and the tool, and means for determining a pair of points on said second desired profile within a predetermined value from each of selected pulse representation values of said distance, means for calculating the pulse representation value of said angle nearest to said second desired profile and corresponding to each of said selected pulse representation values of said distance by using said pair of points, error checking means for changing the length of each of straight line segments between selected pulse representation values to approximate a profile represented by said pulse representation values of said angle and said distance by checking a difference between said last-named profile and each of said straight line segments in a manner that said difference becomes smaller than a predetermined allowable tolerance, and an interpolator means for distributing electric pulses to at least one controller of said machine tool for controlling the rotation of the workpiece and the feeding movements of the tool according to said pulse representation values of said angle and said distance.
 25. A numerically controlled machine tool as recited in claIm 24, wherein said error checking means changes the length of each of said straight line segments by shifting a terminal point thereof toward a start point thereof until said difference becomes smaller than said allowable tolerance.
 26. A numerically controlled machine tool as recited in claim 24, wherein error checking means changes the length of each of said straight line segments by extending a terminal point thereof from a start point thereof so long as said difference is smaller than said allowable tolerance.
 27. A numerically controlled machine tool as recited in claim 24, wherein said error checking means calculates the difference by changing the terminal point of each of said straight line segments by changing the pulse representation value of either said angle or said distance within allowable tolerance while maintaining the other of said terminal point pulse representation values fixed, when said difference exceeds said allowable tolerance.
 28. A numerically controlled machine tool as recited in claim 24, wherein said system further comprises memory means for registering said pulse representation values of said angle and said distance so that said interpolator means may read said pulse representation values from said memory means. 